/**
 * 统一响应格式工具
 */

class Response {
  /**
   * 成功响应
   */
  static success(data = null, message = '操作成功') {
    return {
      success: true,
      code: 200,
      message,
      data,
      timestamp: Date.now()
    }
  }

  /**
   * 错误响应
   */
  static error(code, message, data = null) {
    return {
      success: false,
      code,
      message,
      data,
      timestamp: Date.now()
    }
  }

  /**
   * 参数错误
   */
  static paramError(message = '参数错误') {
    return this.error(1008, message)
  }

  /**
   * 未授权
   */
  static unauthorized(message = '未授权') {
    return this.error(401, message)
  }

  /**
   * 服务器错误
   */
  static serverError(message = '服务器内部错误') {
    return this.error(500, message)
  }
}

module.exports = Response

